package it.polimi.traveldream.ejb;

import it.polimi.traveldream.dto.AccomodationDTO;
import it.polimi.traveldream.dto.ActivityDTO;
import it.polimi.traveldream.dto.TransportDTO;

import java.util.List;

import javax.ejb.Local;

@Local
public interface ProductManager {

	public void addActivity(ActivityDTO activity);

	public void addTransport(TransportDTO transport);

	public void addAccomodation(AccomodationDTO accomodation);

	public void removeActivity(ActivityDTO activity);

	public void removeTransport(TransportDTO transport);

	public void removeAccomodation(AccomodationDTO accomodation);

	public List<ActivityDTO> getActivities();

	public List<TransportDTO> getTransports();

	public List<AccomodationDTO> getAccomodations();

	public void save(AccomodationDTO accomodation);

	public void save(TransportDTO transport);

	public void save(ActivityDTO activity);

	public List<AccomodationDTO> getAccomodation(String city);

	public List<ActivityDTO> getActivity(String city);

	public List<TransportDTO> getFiltered(String origin, String destination);

	public List<TransportDTO> getFromOrigin(String origin);

	public List<TransportDTO> getToDestination(String destination);

	public TransportDTO getTransport(Integer id);

	public AccomodationDTO getAccomodation(Integer id);

	public ActivityDTO getActivity(Integer id);
}
